27 research outputs found
Undecidability of Semi-Unification on a Napkin
Semi-unification (unification combined with matching) has been proven undecidable by Kfoury, Tiuryn, and Urzyczyn in the 1990s. The original argument reduces Turing machine immortality via Turing machine boundedness to semi-unification. The latter part is technically most challenging, involving several intermediate models of computation.
This work presents a novel, simpler reduction from Turing machine boundedness to semi-unification. In contrast to the original argument, we directly translate boundedness to solutions of semi-unification and vice versa. In addition, the reduction is mechanized in the Coq proof assistant, relying on a mechanization-friendly stack machine model that corresponds to space-bounded Turing machines. Taking advantage of the simpler proof, the mechanization is comparatively short and fully constructive
Constructive Many-One Reduction from the Halting Problem to Semi-Unification
Semi-unification is the combination of first-order unification and
first-order matching. The undecidability of semi-unification has been proven by
Kfoury, Tiuryn, and Urzyczyn in the 1990s by Turing reduction from Turing
machine immortality (existence of a diverging configuration). The particular
Turing reduction is intricate, uses non-computational principles, and involves
various intermediate models of computation. The present work gives a
constructive many-one reduction from the Turing machine halting problem to
semi-unification. This establishes RE-completeness of semi-unification under
many-one reductions. Computability of the reduction function, constructivity of
the argument, and correctness of the argument is witnessed by an axiom-free
mechanization in the Coq proof assistant. Arguably, this serves as
comprehensive, precise, and surveyable evidence for the result at hand. The
mechanization is incorporated into the existing, well-maintained Coq library of
undecidability proofs. Notably, a variant of Hooper's argument for the
undecidability of Turing machine immortality is part of the mechanization.Comment: CSL 2022 - LMCS special issu
The Algebraic Intersection Type Unification Problem
The algebraic intersection type unification problem is an important component
in proof search related to several natural decision problems in intersection
type systems. It is unknown and remains open whether the algebraic intersection
type unification problem is decidable. We give the first nontrivial lower bound
for the problem by showing (our main result) that it is exponential time hard.
Furthermore, we show that this holds even under rank 1 solutions (substitutions
whose codomains are restricted to contain rank 1 types). In addition, we
provide a fixed-parameter intractability result for intersection type matching
(one-sided unification), which is known to be NP-complete.
We place the algebraic intersection type unification problem in the context
of unification theory. The equational theory of intersection types can be
presented as an algebraic theory with an ACI (associative, commutative, and
idempotent) operator (intersection type) combined with distributivity
properties with respect to a second operator (function type). Although the
problem is algebraically natural and interesting, it appears to occupy a
hitherto unstudied place in the theory of unification, and our investigation of
the problem suggests that new methods are required to understand the problem.
Thus, for the lower bound proof, we were not able to reduce from known results
in ACI-unification theory and use game-theoretic methods for two-player tiling
games
Kripke Semantics for Intersection Formulas
We propose a notion of the Kripke-style model for intersection logic. Using a game interpretation, we prove soundness and completeness of the proposed semantics. In other words, a formula is provable (a type is inhabited) if and only if it is forced in every model. As a by-product, we obtain another proof of normalization for the Barendregt–Coppo–Dezani intersection type assignment system
The Complexity of Principal Inhabitation
It is shown that in the simply typed lambda-calculus the following decision problem of principal inhabitation is Pspace-complete: Given a simple type tau, is there a lambda-term N in beta-normal form such that tau is the principal type of N?
While a Ben-Yelles style algorithm was presented by Broda and Damas in 1999 to count normal principal inhabitants (thereby answering a question posed by Hindley), it does not induce a polynomial space upper bound for principal inhabitation. Further, the standard construction of the polynomial space lower bound for simple type inhabitation does not carry over immediately.
We present a polynomial space bounded decision procedure based on a characterization of principal inhabitation using path derivation systems over subformulae of the input type, which does not require candidate inhabitants to be constructed explicitly. The lower bound is shown by reducing a restriction of simple type inhabitation to principal inhabitation
Constructive Many-one Reduction from the Halting Problem to Semi-unification (Extended Version)
Semi-unification is the combination of first-order unification and
first-order matching. The undecidability of semi-unification has been proven by
Kfoury, Tiuryn, and Urzyczyn in the 1990s by Turing reduction from Turing
machine immortality (existence of a diverging configuration). The particular
Turing reduction is intricate, uses non-computational principles, and involves
various intermediate models of computation. The present work gives a
constructive many-one reduction from the Turing machine halting problem to
semi-unification. This establishes RE-completeness of semi-unification under
many-one reductions. Computability of the reduction function, constructivity of
the argument, and correctness of the argument is witnessed by an axiom-free
mechanization in the Coq proof assistant. Arguably, this serves as
comprehensive, precise, and surveyable evidence for the result at hand. The
mechanization is incorporated into the existing, well-maintained Coq library of
undecidability proofs. Notably, a variant of Hooper's argument for the
undecidability of Turing machine immortality is part of the mechanization
Lower End of the Linial-Post Spectrum
We show that recognizing axiomatizations of the Hilbert-style calculus containing only the axiom a -> (b -> a) is undecidable (a reduction from the Post correspondence problem is formalized in the Lean theorem prover). Interestingly, the problem remains undecidable considering only axioms which, when seen as simple types, are principal for some lambda-terms in beta-normal form. This problem is closely related to type-based composition synthesis, i.e. finding a composition of given building blocks (typed terms) satisfying a desired specification (goal type).
Contrary to the above result, axiomatizations of the Hilbert-style calculus containing only the axiom a -> (b -> b) are recognizable in linear time
The Intersection Type Unification Problem
The intersection type unification problem is an important component in
proof search related to several natural decision problems in
intersection type systems. It is unknown and remains open whether the
unification problem is decidable. We give the first nontrivial lower
bound for the problem by showing (our main result) that it is
exponential time hard. Furthermore, we show that this holds even under
rank 1 solutions (substitutions whose codomains are restricted to
contain rank 1 types). In addition, we provide a fixed-parameter
intractability result for intersection type matching (one-sided
unification), which is known to be NP-complete.
We place the intersection type unification problem in the context of
unification theory. The equational theory of intersection types can
be presented as an algebraic theory with an ACI (associative,
commutative, and idempotent) operator (intersection type) combined
with distributivity properties with respect to a second operator
(function type). Although the problem is algebraically natural and
interesting, it appears to occupy a hitherto unstudied place in the
theory of unification, and our investigation of the problem suggests
that new methods are required to understand the problem. Thus, for the
lower bound proof, we were not able to reduce from known results in
ACI-unification theory and use game-theoretic methods for two-player
tiling games
Mixin Composition Synthesis based on Intersection Types
We present a method for synthesizing compositions of mixins using type
inhabitation in intersection types. First, recursively defined classes and
mixins, which are functions over classes, are expressed as terms in a lambda
calculus with records. Intersection types with records and record-merge are
used to assign meaningful types to these terms without resorting to recursive
types. Second, typed terms are translated to a repository of typed combinators.
We show a relation between record types with record-merge and intersection
types with constructors. This relation is used to prove soundness and partial
completeness of the translation with respect to mixin composition synthesis.
Furthermore, we demonstrate how a translated repository and goal type can be
used as input to an existing framework for composition synthesis in bounded
combinatory logic via type inhabitation. The computed result is a class typed
by the goal type and generated by a mixin composition applied to an existing
class